home *** CD-ROM | disk | FTP | other *** search
/ Commodore Free 6 / Commodore_Free_Issue_06_2007_Commodore_Computer_Club.d64 / t.romram 1 < prev    next >
Text File  |  2023-02-26  |  6KB  |  195 lines

  1. u
  2.   The 6502-RAMROM as drive expander
  3.     ==============================
  4.   i Wolfgang Moser and Nicolas Welte
  5.  
  6. A short overview of the 6502
  7. microprocessor based hardware
  8. extension, that was designed by
  9. Nicolas Welte . It contains a
  10. dedicated test report with my personal
  11. experiences and some application
  12. examples. Originally the 6502-RAMROM
  13. [6502-RamRom inserted into 1541 drive,
  14. side view,
  15.  
  16. was conceived by Nicolas Welte and
  17. Paul Fvrster for the Commodore PET
  18. series computers as a RAM and ROM
  19. expansion and diagnostic board,
  20. leading to it's first name: PETRAM.
  21. Based upon many discussions with
  22. Nicolas in the design phase, he (we ?)
  23. decided to make use of a Flash-ROM
  24. chip instead of just EPROMs. And other
  25. 6502 microprocessor based Commodore
  26. computers like the VIC20 or the 1541
  27. disk drive should be taken into
  28. account.
  29.  
  30. The processor adaptor board can be
  31. configured for different systems by
  32. simply replacing one little GAL 16V8
  33. programmable logic chip. To keep the
  34. hardware simple, the C64 computer or
  35. other non pure 6502 micro's are not
  36. supported.
  37.  
  38. 6502-RAMROM prototype test report from
  39. Womo, 2003-02-07 HardwareSome weeks
  40. after Nicolas received his
  41. professionally manufactured printed
  42. circuit boards (PCBs) of the
  43. 6502-RAMROM  I ordered two of them
  44. [Delivered 6502-RamRom and
  45. Flash-Adaptor PCBs,
  46.  
  47. along with some of the needed
  48. components. Since I don't own a PET
  49. computer nor a VIC20, I ordered only
  50. two GALs for the Commodore 15x1 drive
  51. replacement configuration. Since I can
  52. call myself an experienced electronic
  53. craftsman, soldering the board was no
  54. big problem. Although I have to state
  55. that, for a beginner, it may be too
  56. hard. Please look
  57.  
  58. onto Nicolas' construction page and
  59. carefully decide, if you feel able to
  60. solder the board. If not, you should
  61. order the ready-built extension board
  62.  [6502-RamRom top view,
  63.  [6502-RamRom bottom view
  64.  [Soldered optional SMD-RAM,
  65.  
  66. At this time, the Flash update
  67. software wasn't available for disk
  68. drive in-circuit updates, so I had to
  69. use my IBM-PC based c't-Flasher for
  70. burning some contents into the ROMs. I
  71. tested several speeder ROMs, flashed
  72. different versions into the four ROM
  73. banks and switched them forth and
  74. back. Everything worked fine, cool.
  75. Dolphin-DOS 2.0Before I could test the
  76. RAM options I needed to solve some
  77. problems. I wanted to test out the
  78. Dolphin-DOS 2.0 floppy speeder ROM
  79. which makes use of additional RAM .
  80. But for this and other speeder systems
  81. I needed to install a parallel cable
  82. from the floppy's 6522 VIA chip to my
  83. C64's user port. And I needed a simple
  84. solution to quickly test out different
  85. C64 Kernal replacements.The second was
  86. no problem, because I also ordered
  87. some Flash-ROM  [C64 Flash-Adapter
  88. Kernal ROMswitch,
  89. top view,  [Inserted C64
  90. Flash-Adapter Kernal ROM switch,]
  91.  
  92. adaptor PCBs  and could easily build a
  93. Flash-ROM to C64 Kernal adaptor.
  94. Inserting a parallel cable into my
  95. 1541 drive was a little bit
  96. problematic, because the 6502-RAMROM
  97. board overlays the 6522 VIA chip
  98. location. First I used some additional
  99. 40 pin sockets to lift the 6502-RAMROM
  100. a bit higher, but I didn't feel happy
  101. with it; the case couldn't be closed
  102. now. So I built a very special
  103. lowest-profile parallel cable adaptor.
  104.  [1541 low profile parallel cable
  105. adaptor, bottom view,
  106.  [1541 low profile parallel cable
  107. adaptor, top view,
  108.  
  109. This all done, I first tested my
  110. beloved SpeedDOS (35 and 40 tracks)
  111. and made sure, that it worked fine. I
  112. also tested some of the most important
  113. copy programs to make sure, that the
  114. parallel cable and the ROM
  115. replacements don't fail. Preparations
  116. for the test of Dolphin-DOS 2.0 ] were
  117. done, flashing the 1541 drive ROM and
  118. C64 Kernal. I configured the RAM
  119. option switches to DD2 and made the
  120. first steps. Anything looked fine. And
  121. wow, DD2 isn't as slow as I thought
  122. all the time. Although beaten by
  123. Professional-DOS  working with it
  124. brings fun. I couldn't see any
  125. problems like load or CRC errors, all
  126. games loaded fine and were playable.
  127. So the RAM seemed to work fine also.
  128. [Space between parallel cable
  129. adaptorand 6502-RamRom (view 1),
  130. [Space between parallel cable adaptor
  131. and 6502-RamRom (view 2), [Space
  132. between parallel cable adaptorand
  133. 6502-RamRom (lifted),
  134.  
  135. In-circuit flashing The next test
  136. phase came, when Nicolas was finished
  137. with the in-circuit drive flashing
  138. software . This piece of software was
  139. designed a very, very special way. The
  140. ROM, that is going to burned is not
  141. loaded into the computer's memory and
  142. transferred back into the drive's
  143. Flash-ROM memory. That would be much
  144. too long winded. No, the ROM contents
  145. are transferred directly, block by
  146. block, from the disk's surface into
  147. the drive's buffer memory and further
  148. into the Flash-ROM.
  149.  
  150. This is possible, because Flash-ROMs
  151. from Atmel ] were used, that can be
  152. flashed page by page. Unfortunately
  153. the Flash software does only support
  154. chips from Atmel until now, but you
  155. can use differently sized ROMs, if you
  156. want (AT29C256, AT29C512, AT29C010)
  157. and if you don't need that much ROM
  158. banks.For the first times flashing new
  159. drive ROMs went flawlessly, but
  160. whenever a SpeedDOS-ROM was configured
  161. via the main ROM switches I ran into
  162. problems with flashing other ROM
  163. banks.
  164.  
  165.  Some tests revealed, that whenever a
  166. SpeedDOS-ROM was selected with the
  167. 6502-RAMROM and the Flash enable
  168. switch was set, the drive hung up,
  169. when a file was loaded or the error
  170. channel was retrieved with the '@'
  171. command. I discussed it with Nicolas
  172. and he told me, that he found similar
  173. problems with the original CBM
  174. VIC20-ROM. We found out that some
  175. misdesigned ROM code fragments were
  176. responsible for this (Note: the VICE
  177. emulator's built-in monitor was
  178. exceedingly helpful with this:
  179. <ALT>-m, device 8:, watch store 8000
  180. FFFF, exit).
  181.  
  182.  Whenever the Flash enable switch is
  183. set and parts of code executed by the
  184. desired 6502 processor store values to
  185. the ROM (to the Flash-ROM), the
  186. internal logic of the Flash blocks the
  187. whole chip so that even reading the
  188. ROM fails for some time. After
  189. discussing this point in the
  190. cbm-hackers mailing list ], Nicolas
  191. managed to fix this ROM bug and so did
  192. I with the SpeedDOS-ROMs .
  193.  
  194. ...end part 1...
  195.  
  196.